Method, System, and Computer Program Product for Wait Time Estimation Using Predictive Modeling

ABSTRACT

Described are a system, method, and computer program product for wait time estimation using predictive modeling. The method includes receiving a request for a predictive wait time estimate from a user including a designated time and a selection of a merchant. The method also includes determining an initial queue length and determining a service rate for each subinterval of a plurality of subintervals from the current time to the designated time. The method further includes producing a plurality of arrival rates using a trained predictive model, and determining a difference between an arrival rate and a service rate for each subinterval, to produce a plurality of changes in queue length. The method further includes determining a queue length based on the plurality of changes in queue length, generating the predictive wait time estimate based on the queue length, and transmitting the predictive wait time estimate to the user.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/954,599, filed Jun. 17, 2020, which is the United States nationalphase of International Application No. PCT/US2017/067530, filed Dec. 20,2017, the disclosures of which are hereby incorporated by reference intheir entireties.

BACKGROUND 1. Technical Field

Disclosed embodiments relate generally to a system, method, and computerprogram product for generating and applying a predictive wait timeestimate using predictive modeling, and in some non-limiting embodimentsor aspects, to a system, method, and computer program product forgenerating predictive wait time estimates by applying predictivemodeling to historic transaction data.

2. Technical Considerations

In systems of computer-monitored service and wait times, it may beconvenient to base the analysis on popular queuing theory, and whenanalyzing merchants with a single point of service, the M/M/1 modelseems like a good fit. However, this assumption is inaccurate andinefficient. Traditional queueing theory assumes constant/regularservice rates (e.g., people serviced per unit time) and arrival rates(e.g., people arriving per unit time). However, this realistically doesnot occur for merchants in practical operation. For one, arrival ratesof customers can considerably change depending on any number of factors,including time of day, season, type of merchant, and/or the like. By wayof example, a restaurant might be more crowded during certain timeperiods for breakfast, lunch, and dinner, while coffee shops mayexperience heavier traffic during the morning and afternoon.Furthermore, although service rate, e.g., the number of people servicedper unit time, may largely remain a constant—as it is it is not probablefor the speed of a person serving to vary extremely—it can still vary.Thus, applying traditional queuing theory by itself is inadequate foraccurate, consistent, and efficient computer-driven predictive modeling.

There is a need in the art for a wait estimation model that does notrequire direct observation of customer arrivals, departures, andservices. There is further a need in the art for a system to monitorpredictive wait times and automatically notify users or merchants whenwait time estimates meet or pass predetermined thresholds.

SUMMARY

Accordingly, and generally, provided is an improved system,computer-implemented method, and computer program product for generatingand applying a predictive wait time estimate using predictive modeling.Provided is a system, computer-implemented method, and computer programproduct for receiving transaction data representative of a plurality oftransactions during a sample time period and generating training databased at least partially on the transaction data. Provided is a system,computer-implemented method, and computer program product for generatinga predictive model that generates an output of arrival rate for at leastone time parameter and generating the predictive wait time estimate fora designated time.

According to some non-limiting embodiments or aspects, provided is acomputer-implemented method for generating and applying a predictivewait time estimate using predictive modeling. The method includesreceiving, with at least one processor, initial transaction datarepresentative of a plurality of transactions between a plurality oftransaction accounts and at least one merchant completed during a sampletime period. The initial transaction data includes, for each transactionof the plurality of transactions, a transaction time and a transactionvalue. The method also includes generating, with at least one processorand based at least partially on the initial transaction data, for eachsubinterval of the sample time period, training data including at leastone of the following: service rate (e.g., people serviced per unit time)during the subinterval, number of transactions during the subinterval,total transaction value during the subinterval, mean transaction valueduring the subinterval, year, month, day of week, or any combinationthereof. The method further includes generating, with at least oneprocessor and based at least partially on the training data of thesample time period, a predictive model that generates an output ofarrival rate (e.g., people arriving per unit time) for an inputincluding at least one time parameter. The method further includesgenerating, with at least one processor and using the predictive model,the predictive wait time estimate for a designated time. The predictivewait time estimate is at least partially based on the relationship of aqueue length at the designated time to the service rate at thedesignated time. The queue length at the designated time is determinedat least partially by an initial queue length at a start time anddifferences in the arrival rate and the service rate for eachsubinterval from the start time to the designated time.

In some non-limiting embodiments or aspects, the method may includereceiving, with at least one processor, input of the designated timefrom a display device of a transaction account holder or a merchant. Themethod may also include, in response to receiving the input of thedesignated time, transmitting, with at least one processor, thegenerated predictive wait time estimate to the display device forpresentation. The method may further include transmitting to the displaydevice, with at least one processor, a plurality of merchants includingthe at least one merchant for presentation and selection. The method mayfurther include receiving, with at least one processor, from the displaydevice a selection of the at least one merchant.

In some non-limiting embodiments or aspects, the designated time is acurrent time, and the method may include receiving, with at least oneprocessor, new transaction data representative of one or moretransactions between one or more transaction accounts and the at leastone merchant completed during a time interval preceding up to thecurrent time. The new transaction data may include, for each transactionof the one or more transactions, a transaction time and a transactionvalue. The method may also include generating, with at least oneprocessor, the service rate based at least partially on a relationshipof a total transaction value during the time interval preceding up tothe current time to a mean transaction value for the time intervalpreceding up to the current time. The method may further includereceiving at predetermined intervals, with at least one processor, newtransaction data representative of one or more transactions between oneor more transaction accounts and the at least one merchant completedduring a new sample time period. The new transaction data may includefor each transaction of the one or more transactions, a transaction timeand a transaction value. The method may further include re-generating,with at least one processor and based at least partially on the newtransaction data, the training data, the predictive model, and thepredictive wait time estimate.

In some non-limiting embodiments or aspects, the method may include, inresponse to determining that the predictive wait time estimate isgreater than or equal to a predetermined threshold wait time for the atleast one merchant, generating and transmitting, with at least oneprocessor, a communication to at least one transaction account holderincluding an offer for a reduced service or product price for the atleast one merchant. The method may also include, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the at least onemerchant, generating and transmitting, with at least one processor, acommunication to at least one merchant system including an alertconfigured to cause the at least one merchant system to take action toincrease its corresponding service rate. The method may further include,in response to determining that the predictive wait time estimate isless than or equal to a predetermined minimum wait time for the at leastone merchant, generating and transmitting, with at least one processor,a communication to at least one transaction account holder including anadvertisement for the at least one merchant.

According to some non-limiting embodiments or aspects, provided is asystem for generating and applying a predictive wait time estimate usingpredictive modeling. The system includes at least one server computerincluding at least one processor, the at least one server computerprogrammed and/or configured to receive initial transaction datarepresentative of a plurality of transactions between a plurality oftransaction accounts and at least one merchant completed during a sampletime period. The initial transaction data includes, for each transactionof the plurality of transactions, a transaction time and a transactionvalue. The server computer is also programmed and/or configured togenerate, based at least partially on the initial transaction data, foreach subinterval of the sample time period, training data including atleast one of the following: service rate during the subinterval, numberof transactions during the subinterval, total transaction value duringthe subinterval, mean transaction value during the subinterval, year,month, day of week, or any combination thereof. The server computer isfurther programmed and/or configured to generate, based at leastpartially on the training data of the sample time period, a predictivemodel that generates an output of arrival rate for an input including atleast one time parameter. The server computer is further programmedand/or configured to generate, using the predictive model, thepredictive wait time estimate for a designated time. The predictive waittime estimate is at least partially based on the relationship of a queuelength at the designated time to the service rate at the designatedtime. The queue length at the designated time is determined at leastpartially by an initial queue length at a start time and differences inthe arrival rate and the service rate for each subinterval from thestart time to the designated time.

In some non-limiting embodiments or aspects, the at least one servercomputer may be programmed and/or configured to receive input of thedesignated time from a display device of a transaction account holder ora merchant. The at least one server computer may also be programmedand/or configured to, in response to receiving the input of thedesignated time, transmit the generated predictive wait time estimate tothe display device for presentation. The at least one server computermay be further programmed and/or configured to transmit to the displaydevice a plurality of merchants including the at least one merchant forpresentation and selection. The at least one server computer may befurther programmed and/or configured to receive from the display devicea selection of the at least one merchant.

In some non-limiting embodiments or aspects, the designated time may bea current time. The at least one server computer may be programmedand/or configured to receive new transaction data representative of oneor more transactions between one or more transaction accounts and the atleast one merchant completed during a time interval preceding up to thecurrent time. The new transaction data may include, for each transactionof the one or more transactions, a transaction time and a transactionvalue. The at least one server computer may also be programmed and/orconfigured to generate the service rate based at least partially on arelationship of a total transaction value during the time intervalpreceding up to the current time to a mean transaction value for thetime interval preceding up to the current time. The at least one servercomputer may be further programmed and/or configured to receive atpredetermined intervals new transaction data representative of one ormore transactions between one or more transaction accounts and the atleast one merchant completed during a new sample time period. The newtransaction data may include, for each transaction of the one or moretransactions, a transaction time and a transaction value. The at leastone server computer may be further programmed and/or configured tore-generate, based at least partially on the new transaction data, thetraining data, the predictive model, and the predictive wait timeestimate.

In some non-limiting embodiments or aspects, the at least one servercomputer may be programmed and/or configured to, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the at least onemerchant, generate and transmit a communication to at least onetransaction account holder including an offer for a reduced service orproduct price for the at least one merchant. The at least one servercomputer may also be programmed and/or configured to, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the at least onemerchant, generate and transmit a communication to at least one merchantsystem including an alert configured to cause the at least one merchantsystem to take action to increase its corresponding service rate. The atleast one server computer may be further programmed and/or configuredto, in response to determining that the predictive wait time estimate isless than or equal to a predetermined minimum wait time for the at leastone merchant, generate and transmit a communication to at least onetransaction account holder including an advertisement for the at leastone merchant.

According to some non-limiting embodiments or aspects, provided is acomputer program product for generating and applying a predictive waittime estimate using predictive modeling. The computer program productincludes at least one non-transitory computer-readable medium includingprogram instructions that, when executed by at least one processor,cause the at least one processor to receive initial transaction datarepresentative of a plurality of transactions between a plurality oftransaction accounts and at least one merchant completed during a sampletime period. The initial transaction data includes, for each transactionof the plurality of transactions, a transaction time and a transactionvalue. The program instructions further cause the at least one processorto generate, based at least partially on the initial transaction data,for each subinterval of the sample time period, training data includingat least one of the following: service rate during the subinterval,number of transactions during the subinterval, total transaction valueduring the subinterval, mean transaction value during the subinterval,year, month, day of week, or any combination thereof. The programinstructions further cause the at least one processor to generate, basedat least partially on the training data of the sample time period, apredictive model that generates an output of arrival rate for an inputincluding at least one time parameter. The program instructions furthercause the at least one processor to generate, using the predictivemodel, the predictive wait time estimate for a designated time. Thepredictive wait time estimate is at least partially based on therelationship of a queue length at the designated time to the servicerate at the designated time. The queue length at the designated time isdetermined at least partially by an initial queue length at a start timeand differences in the arrival rate and the service rate for eachsubinterval from the start time to the designated time.

In some non-limiting embodiments or aspects, the program instructionsmay further cause the at least one processor to receive input of thedesignated time from a display device of a transaction account holder ora merchant. The program instructions may further cause the at least oneprocessor to, in response to receiving the input of the designated time,transmit the generated predictive wait time estimate to the displaydevice for presentation. The program instructions may further cause theat least one processor to transmit to the display device a plurality ofmerchants including the at least one merchant for presentation andselection. The program instructions may further cause the at least oneprocessor to receive from the display device a selection of the at leastone merchant.

In some non-limiting embodiments or aspects, the designated time may bea current time, and the program instructions may further cause the atleast one processor to receive new transaction data representative ofone or more transactions between one or more transaction accounts andthe at least one merchant completed during a time interval preceding upto the current time. The new transaction data may include, for eachtransaction of the one or more transactions, a transaction time and atransaction value. The program instructions may further cause the atleast one processor to generate the service rate based at leastpartially on a relationship of a total transaction value during the timeinterval preceding up to the current time to a mean transaction valuefor the time interval preceding up to the current time. The programinstructions may further cause the at least one processor to receive atpredetermined intervals new transaction data representative of one ormore transactions between one or more transaction accounts and the atleast one merchant completed during a new sample time period. The newtransaction data may include, for each transaction of the one or moretransactions, a transaction time and a transaction value. The programinstructions may further cause the at least one processor tore-generate, based at least partially on the new transaction data, thetraining data, the predictive model, and the predictive wait timeestimate.

In some non-limiting embodiments or aspects, the program instructionsmay further cause the at least one processor to, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the at least onemerchant, generate and transmit a communication to at least onetransaction account holder including an offer for a reduced service orproduct price for the at least one merchant. The program instructionsmay further cause the at least one processor to, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the at least onemerchant, generate and transmit a communication to at least one merchantsystem including an alert configured to cause the at least one merchantsystem to take action to increase its corresponding service rate. Theprogram instructions may further cause the at least one processor to, inresponse to determining that the predictive wait time estimate is lessthan or equal to a predetermined minimum wait time for the at least onemerchant, generate and transmit a communication to at least onetransaction account holder including an advertisement for the at leastone merchant.

Other non-limiting embodiments or aspects of the present disclosure willbe set forth in the following numbered clauses:

Clause 1: A computer-implemented method for generating and applying apredictive wait time estimate using predictive modeling, the methodcomprising: receiving, with at least one processor, initial transactiondata representative of a plurality of transactions between a pluralityof transaction accounts and at least one merchant completed during asample time period, the initial transaction data comprising, for eachtransaction of the plurality of transactions, a transaction time and atransaction value; generating, with at least one processor and based atleast partially on the initial transaction data, for each subinterval ofthe sample time period, training data comprising at least one of thefollowing: service rate during the subinterval, number of transactionsduring the subinterval, total transaction value during the subinterval,mean transaction value during the subinterval, year, month, day of week,or any combination thereof; generating, with at least one processor andbased at least partially on the training data of the sample time period,a predictive model that generates an output of arrival rate for an inputcomprising at least one time parameter; and generating, with at leastone processor and using the predictive model, the predictive wait timeestimate for a designated time, wherein the predictive wait timeestimate is at least partially based on the relationship of a queuelength at the designated time to the service rate at the designatedtime, and wherein the queue length at the designated time is determinedat least partially by an initial queue length at a start time anddifferences in the arrival rate and the service rate for eachsubinterval from the start time to the designated time.

Clause 2: The method of clause 1, further comprising: receiving, with atleast one processor, input of the designated time from a display deviceof a transaction account holder or a merchant; and in response toreceiving the input of the designated time, transmitting, with at leastone processor, the generated predictive wait time estimate to thedisplay device for presentation.

Clause 3: The method of clause 1 or clause 2, further comprising:transmitting to the display device, with at least one processor, aplurality of merchants comprising the at least one merchant forpresentation and selection; and receiving, with at least one processor,from the display device a selection of the at least one merchant.

Clause 4: The method of any of clauses 1-3, wherein the designated timeis a current time, the method further comprising: receiving, with atleast one processor, new transaction data representative of one or moretransactions between one or more transaction accounts and the at leastone merchant completed during a time interval preceding up to thecurrent time, the new transaction data comprising, for each transactionof the one or more transactions, a transaction time and a transactionvalue; and generating, with at least one processor, the service ratebased at least partially on a relationship of a total transaction valueduring the time interval preceding up to the current time to a meantransaction value for the time interval preceding up to the currenttime.

Clause 5: The method of any of clauses 1-4, further comprising:receiving at predetermined intervals, with at least one processor, newtransaction data representative of one or more transactions between oneor more transaction accounts and the at least one merchant completedduring a new sample time period, the new transaction data comprising,for each transaction of the one or more transactions, a transaction timeand a transaction value; and re-generating, with at least one processorand based at least partially on the new transaction data, the trainingdata, the predictive model, and the predictive wait time estimate.

Clause 6: The method of any of clauses 1-5, further comprising, inresponse to determining that the predictive wait time estimate isgreater than or equal to a predetermined threshold wait time for the atleast one merchant, generating and transmitting, with at least oneprocessor, a communication to at least one transaction account holdercomprising an offer for a reduced service or product price for the atleast one merchant.

Clause 7: The method of any of clauses 1-6, further comprising, inresponse to determining that the predictive wait time estimate isgreater than or equal to a predetermined threshold wait time for the atleast one merchant, generating and transmitting, with at least oneprocessor, a communication to at least one merchant system comprising analert configured to cause the at least one merchant system to takeaction to increase its corresponding service rate.

Clause 8: The method of any of clauses 1-7, further comprising, inresponse to determining that the predictive wait time estimate is lessthan or equal to a predetermined minimum wait time for the at least onemerchant, generating and transmitting, with at least one processor, acommunication to at least one transaction account holder comprising anadvertisement for the at least one merchant.

Clause 9: A system for generating and applying a predictive wait timeestimate using predictive modeling, the system comprising at least oneserver computer including at least one processor, the at least oneserver computer programmed and/or configured to: receive initialtransaction data representative of a plurality of transactions between aplurality of transaction accounts and at least one merchant completedduring a sample time period, the initial transaction data comprising,for each transaction of the plurality of transactions, a transactiontime and a transaction value; generate, based at least partially on theinitial transaction data, for each subinterval of the sample timeperiod, training data comprising at least one of the following: servicerate during the subinterval, number of transactions during thesubinterval, total transaction value during the subinterval, meantransaction value during the subinterval, year, month, day of week, orany combination thereof; generate, based at least partially on thetraining data of the sample time period, a predictive model thatgenerates an output of arrival rate for an input comprising at least onetime parameter; and generate, using the predictive model, the predictivewait time estimate for a designated time, wherein the predictive waittime estimate is at least partially based on the relationship of a queuelength at the designated time to the service rate at the designatedtime, and wherein the queue length at the designated time is determinedat least partially by an initial queue length at a start time anddifferences in the arrival rate and the service rate for eachsubinterval from the start time to the designated time.

Clause 10: The system of clause 9, the at least one server computerfurther programmed and/or configured to: receive input of the designatedtime from a display device of a transaction account holder or amerchant; and in response to receiving the input of the designated time,transmit the generated predictive wait time estimate to the displaydevice for presentation.

Clause 11: The system of clause 9 or clause 10, the at least one servercomputer further programmed and/or configured to: transmit to thedisplay device a plurality of merchants comprising the at least onemerchant for presentation and selection; and receive from the displaydevice a selection of the at least one merchant.

Clause 12: The system of any of clauses 9-11, wherein the designatedtime is a current time, the at least one server computer furtherprogrammed and/or configured to: receive new transaction datarepresentative of one or more transactions between one or moretransaction accounts and the at least one merchant completed during atime interval preceding up to the current time, the new transaction datacomprising, for each transaction of the one or more transactions, atransaction time and a transaction value; and generate the service ratebased at least partially on a relationship of a total transaction valueduring the time interval preceding up to the current time to a meantransaction value for the time interval preceding up to the currenttime.

Clause 13: The system of any of clauses 9-12, the at least one servercomputer further programmed and/or configured to: receive atpredetermined intervals new transaction data representative of one ormore transactions between one or more transaction accounts and the atleast one merchant completed during a new sample time period, the newtransaction data comprising, for each transaction of the one or moretransactions, a transaction time and a transaction value; andre-generate, based at least partially on the new transaction data, thetraining data, the predictive model, and the predictive wait timeestimate.

Clause 14: The system of any of clauses 9-13, the at least one servercomputer further programmed and/or configured to, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the at least onemerchant, generate and transmit a communication to at least onetransaction account holder comprising an offer for a reduced service orproduct price for the at least one merchant.

Clause 15: The system of any of clauses 9-14, the at least one servercomputer further programmed and/or configured to, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the at least onemerchant, generate and transmit a communication to at least one merchantsystem comprising an alert configured to cause the at least one merchantsystem to take action to increase its corresponding service rate.

Clause 16: The system of any of clauses 9-15, the at least one servercomputer further programmed and/or configured to, in response todetermining that the predictive wait time estimate is less than or equalto a predetermined minimum wait time for the at least one merchant,generate and transmit a communication to at least one transactionaccount holder comprising an advertisement for the at least onemerchant.

Clause 17: A computer program product for generating and applying apredictive wait time estimate using predictive modeling, the computerprogram product comprising at least one non-transitory computer-readablemedium including program instructions that, when executed by at leastone processor, cause the at least one processor to: receive initialtransaction data representative of a plurality of transactions between aplurality of transaction accounts and at least one merchant completedduring a sample time period, the initial transaction data comprising,for each transaction of the plurality of transactions, a transactiontime and a transaction value; generate, based at least partially on theinitial transaction data, for each subinterval of the sample timeperiod, training data comprising at least one of the following: servicerate during the subinterval, number of transactions during thesubinterval, total transaction value during the subinterval, meantransaction value during the subinterval, year, month, day of week, orany combination thereof; generate, based at least partially on thetraining data of the sample time period, a predictive model thatgenerates an output of arrival rate for an input comprising at least onetime parameter; and generate, using the predictive model, the predictivewait time estimate for a designated time, wherein the predictive waittime estimate is at least partially based on the relationship of a queuelength at the designated time to the service rate at the designatedtime, and wherein the queue length at the designated time is determinedat least partially by an initial queue length at a start time anddifferences in the arrival rate and the service rate for eachsubinterval from the start time to the designated time.

Clause 18: The computer program product of clause 17, wherein theprogram instructions further cause the at least one processor to:receive input of the designated time from a display device of atransaction account holder or a merchant; and in response to receivingthe input of the designated time, transmit the generated predictive waittime estimate to the display device for presentation.

Clause 19: The computer program product of clause 17 or clause 18,wherein the program instructions further cause the at least oneprocessor to: transmit to the display device a plurality of merchantscomprising the at least one merchant for presentation and selection; andreceive from the display device a selection of the at least onemerchant.

Clause 20: The computer program product of any of clauses 17-19, whereinthe designated time is a current time, and wherein the programinstructions further cause the at least one processor to: receive newtransaction data representative of one or more transactions between oneor more transaction accounts and the at least one merchant completedduring a time interval preceding up to the current time, the newtransaction data comprising, for each transaction of the one or moretransactions, a transaction time and a transaction value; and generatethe service rate based at least partially on a relationship of a totaltransaction value during the time interval preceding up to the currenttime to a mean transaction value for the time interval preceding up tothe current time.

Clause 21: The computer program product of any of clauses 17-20, whereinthe program instructions further cause the at least one processor to:receive at predetermined intervals new transaction data representativeof one or more transactions between one or more transaction accounts andthe at least one merchant completed during a new sample time period, thenew transaction data comprising, for each transaction of the one or moretransactions, a transaction time and a transaction value; andre-generate, based at least partially on the new transaction data, thetraining data, the predictive model, and the predictive wait timeestimate.

Clause 22: The computer program product of any of clauses 17-21, whereinthe program instructions further cause the at least one processor to, inresponse to determining that the predictive wait time estimate isgreater than or equal to a predetermined threshold wait time for the atleast one merchant, generate and transmit a communication to at leastone transaction account holder comprising an offer for a reduced serviceor product price for the at least one merchant.

Clause 23: The computer program product of any of clauses 17-22, whereinthe program instructions further cause the at least one processor to, inresponse to determining that the predictive wait time estimate isgreater than or equal to a predetermined threshold wait time for the atleast one merchant, generate and transmit a communication to at leastone merchant system comprising an alert configured to cause the at leastone merchant system to take action to increase its corresponding servicerate.

Clause 24: The computer program product of any of clauses 17-23, whereinthe program instructions further cause the at least one processor to, inresponse to determining that the predictive wait time estimate is lessthan or equal to a predetermined minimum wait time for the at least onemerchant, generate and transmit a communication to at least onetransaction account holder comprising an advertisement for the at leastone merchant.

These and other features and characteristics of the present disclosure,as well as the methods of operation and functions of the relatedelements of structures and the combination of parts and economies ofmanufacture, will become more apparent upon consideration of thefollowing description, and the appended claims with reference to theaccompanying drawings, all of which form a part of this specification,wherein like reference numerals designate corresponding parts in thevarious figures. It is to be expressly understood, however, that thedrawings are for the purpose of illustration and description only andare not intended as a definition of the limits of the disclosure. Asused in the specification and the claims, the singular forms of “a,”“an,” and “the” include plural referents unless the context clearlydictates otherwise.

BRIEF DESCRIPTION OF THE DRAWINGS

Additional advantages and details of the disclosure are explained ingreater detail below with reference to the exemplary embodiments thatare illustrated in the accompanying figures, in which:

FIG. 1 is a schematic diagram of some non-limiting embodiments oraspects of a system and method for generating and applying a predictivewait time estimate using predictive modeling;

FIG. 2 is a flow diagram of some non-limiting embodiments or aspects ofa system and method for generating and applying a predictive wait timeestimate using predictive modeling;

FIG. 3 is a performance output diagram of some non-limiting embodimentsor aspects of a system and method generating and applying a predictivewait time estimate using predictive modeling; and

FIG. 4 is a performance output diagram of some non-limiting embodimentsor aspects of a system and method generating and applying a predictivewait time estimate using predictive modeling.

DETAILED DESCRIPTION

For purposes of the description hereinafter, the terms “upper,” “lower,”“right,” “left,” “vertical,” “horizontal,” “top,” “bottom,” “lateral,”“longitudinal,” and derivatives thereof shall relate to the disclosureas it is oriented in the drawing figures. However, it is to beunderstood that the disclosure may assume various alternative variationsand step sequences, except where expressly specified to the contrary. Itis also to be understood that the specific devices and processesillustrated in the attached drawings, and described in the followingspecification, are simply exemplary embodiments of the disclosure.Hence, specific dimensions and other physical characteristics related tothe embodiments disclosed herein are not to be considered as limiting.Also, it should be understood that any numerical range recited herein isintended to include all sub-ranges subsumed therein. For example, arange of “1 to 10” is intended to include all sub-ranges between (andincluding) the recited minimum value of 1 and the recited maximum valueof 10, that is, having a minimum value equal to or greater than 1 and amaximum value of equal to or less than 10.

As used herein, the terms “communication” and “communicate” refer to thereceipt or transfer of one or more signals, messages, commands, or othertype of data. For one unit (e.g., any device, system, or componentthereof) to be in communication with another unit means that the oneunit is able to directly or indirectly receive data from and/or transmitdata to the other unit. This may refer to a direct or indirectconnection that is wired and/or wireless in nature. Additionally, twounits may be in communication with each other even though the datatransmitted may be modified, processed, relayed, and/or routed betweenthe first and second unit. For example, a first unit may be incommunication with a second unit even though the first unit passivelyreceives data and does not actively transmit data to the second unit. Asanother example, a first unit may be in communication with a second unitif an intermediary unit processes data from one unit and transmitsprocessed data to the second unit. It will be appreciated that numerousother arrangements are possible.

As used herein, the term “transaction service provider” may refer to anentity that receives transaction authorization requests from merchantsor other entities and provides guarantees of payment, in some casesthrough an agreement between the transaction service provider and anissuer institution. The terms “transaction service provider” and“transaction service provider system” may also refer to one or morecomputer systems operated by or on behalf of a transaction serviceprovider, such as a transaction processing server executing one or moresoftware applications. A transaction processing server may include oneor more processors and, in some non-limiting embodiments, may beoperated by or on behalf of a transaction service provider.

As used herein, the term “issuer institution” may refer to one or moreentities, such as a bank, that provide accounts to customers forconducting payment transactions, such as initiating credit and/or debitpayments. For example, an issuer institution may provide an accountidentifier, such as a personal account number (PAN), to a customer thatuniquely identifies one or more accounts associated with that customer.The account identifier may be embodied on a physical financialinstrument, such as a payment card, and/or may be electronic and usedfor electronic payments. The terms “issuer institution,” “issuer bank,”and “issuer system” may also refer to one or more computer systemsoperated by or on behalf of an issuer institution, such as a servercomputer executing one or more software applications. For example, anissuer system may include one or more authorization servers forauthorizing a payment transaction.

As used herein, the term “account identifier” may include one or morePANs, tokens, or other identifiers associated with a customer account.The term “token” may refer to an identifier that is used as a substituteor replacement identifier for an original account identifier, such as aPAN. Account identifiers may be alphanumeric or any combination ofcharacters and/or symbols. Tokens may be associated with a PAN or otheroriginal account identifier in one or more databases such that they canbe used to conduct a transaction without directly using the originalaccount identifier. In some examples, an original account identifier,such as a PAN, may be associated with a plurality of tokens fordifferent individuals or purposes. An issuer institution may beassociated with a bank identification number (BIN) or other uniqueidentifier that uniquely identifies it among other issuer institutions.

As used herein, the term “merchant” may refer to an individual or entitythat provides goods and/or services, or access to goods and/or services,to customers based on a transaction, such as a payment transaction. Theterm “merchant” or “merchant system” may also refer to one or morecomputer systems operated by or on behalf of a merchant, such as aserver computer executing one or more software applications. A“point-of-sale (POS) system,” as used herein, may refer to one or morecomputers and/or peripheral devices used by a merchant to engage inpayment transactions with customers, including one or more card readers,near-field communication (NFC) receivers, radio frequency identification(RFID) receivers, and/or other contactless transceivers or receivers,contact-based receivers, payment terminals, computers, servers, inputdevices, and/or other like devices that can be used to initiate apayment transaction.

As used herein, the term “mobile device” may refer to one or moreportable electronic devices configured to communicate with one or morenetworks. As an example, a mobile device may include a cellular phone(e.g., a smartphone or standard cellular phone), a portable computer(e.g., a tablet computer, a laptop computer, etc.), a wearable device(e.g., a watch, pair of glasses, lens, clothing, and/or the like), apersonal digital assistant (PDA), and/or other like devices. The term“client device,” as used herein, refers to any electronic device that isconfigured to communicate with one or more servers or remote devicesand/or systems. A client device may include a mobile device, anetwork-enabled appliance (e.g., a network-enabled television,refrigerator, thermostat, and/or the like), a computer, a POS system,and/or any other device or system capable of communicating with anetwork.

As used herein, the term “financial device” may refer to a paymentdevice, an electronic payment device, a portable financial device, aportable payment card (e.g., a credit or debit card), a gift card, asmartcard, smart media, a payroll card, a healthcare card, a wrist band,a machine-readable medium containing account information, a keychaindevice or fob, an RFID transponder, a retailer discount or loyalty card,a mobile device executing an electronic wallet application, a personaldigital assistant, a security card, an access card, a wireless terminal,and/or a transponder, as examples. The financial device may include avolatile or a non-volatile memory to store information, such as anaccount identifier or a name of the account holder. The financial devicemay store account credentials locally on the device, in digital ornon-digital representation, or may facilitate accessing accountcredentials stored in a medium that is accessible by the financialdevice in a connected network.

As used herein, the term “server” may refer to or include one or moreprocessors or computers, storage devices, or similar computerarrangements that are operated by or facilitate communication andprocessing for multiple parties in a network environment, such as theinternet, although it will be appreciated that communication may befacilitated over one or more public or private network environments andthat various other arrangements are possible. Further, multiplecomputers, e.g., servers, or other computerized devices, e.g., POSdevices, directly or indirectly communicating in the network environmentmay constitute a “system,” such as a merchant's POS system. Reference to“a server” or “a processor,” as used herein, may refer to apreviously-recited server and/or processor that is recited as performinga previous step or function, a different server and/or processor, and/ora combination of servers and/or processors. For example, as used in thespecification and the claims, a first server and/or a first processorthat is recited as performing a first step or function may refer to thesame or different server and/or a processor recited as performing asecond step or function.

The term “account data,” as used herein, refers to any data concerningone or more accounts for one or more users. Account data may include,for example, one or more account identifiers, user identifiers,transaction histories, balances, credit limits, issuer institutionidentifiers, and/or the like.

In some non-limiting embodiments or aspects of the present disclosure,the disclosure improves on prior art systems by determining queuelengths and wait times by using transaction data as an efficient proxyfor direct observation. By collecting and analyzing historic transactiondata and applying machine learning techniques, variables that influencethe frequency, value, and timing of transactions can be extracted.Furthermore, by filtering the transaction data to analyze individualmerchants, and applying modified queuing theory models, the describedsystems can generate useful metrics, communications, and feedback forusers and merchants. Additional communication processes may be automatedto allow users and/or merchants to be automatically notified if a waittime estimate is abnormally low or abnormally high, which furtherreduces reaction time, increases the likelihood of users and/ormerchants taking action, and increases the effectiveness of userpromotion campaigns or merchant service times. Additionally, the uniquearrangement of network architecture described in non-limitingembodiments, including a combination or sub-combination of financialdevices, POS terminals, transaction processing servers, andcommunication devices, allows the system to operate in real-time andcreate a feedback loop for recursive improvement.

With specific reference to FIG. 1 , and in some non-limiting embodimentsor aspects of the disclosure, provided is a system 100 for generatingand applying a predictive wait time estimate using predictive modeling.In the system, one or more account holders 102 may interact with one ormore merchants 104. Account holders 102 may complete transactions withmerchants 104 by using a financial device 106 associated with theirtransaction account to make a payment for goods and/or services via amerchant's 104 (POS) terminal 108. The transaction requests may bereceived and processed by a transaction processing server 110 or system,which is communicatively connected to a transaction data database 112for storing transaction data of transactions between account holders 102and merchants 104. Transaction data may include, but is not limited to,transaction date, transaction time, merchant identification, merchantlocation, transaction value, and/or the like. The transaction processingserver 110 may be communicatively connected to a predictive modelingserver 114. It will also be appreciated that the transaction processingserver 110 may be the same server as the predictive modeling server 114.The predictive modeling server 114 may communicate directly with thetransaction data database 112 and/or the transaction processing server110 to retrieve transaction data of completed transactions betweenaccount holders 102 and merchants 104. The predictive modeling server114 may also be connected to a model database 116 where predictivemodels may be stored. It will be appreciated that other configurationsare possible.

With further reference to FIG. 1 , and In some non-limiting embodimentsor aspects of the disclosure, users (e.g., prospective customers), whichmay include account holders 102 who have previously transacted with themerchants 104, may be provided with a user application programminginterface (API) 118 to communicate with the predictive modeling server114. Via the user API 118, a user may request predictive wait time datafrom the predictive modeling server 114, receive the predictive waittime data, and/or save preferences and settings associated with theiruser profile. Users may be presented with a list of one or moremerchants 104 to select from, and the merchant list may be filteredbased on geographic region, business hours, merchant type, good/servicetype, good/service price, proximity of the user, and/or the like. Thepredictive modeling server 114 may receive the merchant 104 selectionand generate and/or transmit a predictive wait time estimate for theselected merchant 104 to the user. Merchants 104 may also be providedwith a merchant API 120 to communicate with the predictive modelingserver 114. Via the merchant API 120, a merchant 104 may requestpredictive wait time data from the predictive modeling server 114,receive the predictive wait time data, and/or save preferences andsettings associated with their merchant 104 profile. The predictivemodeling server 114 may use historic transaction data for one or moremerchants 104 to create a predictive model of the arrival rates ofcustomers at a given merchant 104, as well as to determine historicservice rates of a given merchant 104. The predictive model isconfigured to have an output of arrival rate for an input of at leastone or more time parameters. The predictive model may be generatedspecific to one merchant 104, a group of merchants 104 (e.g., merchantswith similar characteristics, such as merchant type), or all merchants104. It will be appreciated that other configurations are possible.

With further reference to FIG. 1 , and in some non-limiting embodimentsor aspects of the disclosure, the system 100 may include a communicationserver 122, which may be communicatively connected to the transactionprocessing server 110 and/or the predictive modeling server 114. It willalso be appreciated that the communication server 122 may be the sameserver as the transaction processing server 110 and/or the predictivemodeling server 114. The communication server 122, predictive modelingserver 114, model database 116, transaction processing server 110, andtransaction data database 112 may all be associated with and/orcontrolled by a transaction service provider 128. The communicationserver 122 is configured to communicate with user communication devices124 and/or merchant communication devices 126. Communications from thecommunication server 122 may include data, messages, alerts,notifications, and/or the like related to predictive wait time estimatesthat are relevant to a user or merchant 104. In one non-limitingexample, the communication server 122 may generate and transmit an alertto a merchant 104 including an alert that predictive wait time estimatesand/or arrival rates for customers are meeting or exceeding a wait timeand/or arrival rate threshold, such as a threshold set by the merchant104 in their merchant profile, or a threshold automatically determinedas a historic wait time and/or arrival rate maximum. By way of a furthernon-limiting example, the communication server 122 may generate andtransmit an advertisement for one or more merchants 104 to one or moreusers. The advertisement may be triggered to be sent automatically bythe communication server 122 based on one or more parameters, such asproximity of a user to the advertised merchant 104, low predictive waittime estimates and/or arrival rates, advertising campaign settingsassociated with a merchant 104 profile, and/or the like. It will beappreciated that by transmitting communications to users and merchantsin ways that are intended to influence future transaction behavior, thesystem provides for recursive feedback. Customers are more likely tolearn what times have the shortest queues, and so the unpredictabilityand variability of queue length and wait time will decrease. Merchantsare more likely to react to periods where the service rate isunnecessarily fast or inefficiently slow, which further reducesunpredictability and variability in queue length and wait time. It willbe appreciated that other configurations are possible.

With specific reference to FIG. 2 , and in some non-limiting embodimentsor aspects of the disclosure, provided is a method 200 for generatingand applying a predictive wait time estimate using predictive modeling.The method 200 may be carried out by the communication server 122,predictive modeling server 114, transaction processing server 110, orany combination thereof. The method 200 includes, at step 202, receivinginitial transaction data representative of a plurality of transactionsbetween a plurality of transaction accounts and at least one merchantcompleted during a sample time period. The transaction data may include,but is not limited to, transaction date, transaction time, merchantidentification, merchant location, transaction value, and/or the like.At step 204, training data is generated for each subinterval of thesample time period. Subintervals may be on the scale of one or moreminutes, hours, days, weeks, months, seasons, or years. The trainingdata may be generated based at least partially on the initialtransaction data and include at least one of the following: service rateduring the subinterval, number of transactions during the subinterval,total transaction value during the subinterval, mean transaction valueduring the subinterval, year, month, day of week, or any combinationthereof. At step 206, based at least partially on the training data ofthe sample time period, a predictive model is generated that generatesan output of arrival rate for an input including at least one timeparameter, e.g., one or more subintervals. The predictive model may begenerated specific to one or more merchants. At step 208, a list of oneor more merchants may be transmitted to a user for selection. Themerchant list may be generated or filtered based on one or moreparameters, including geographic region, business hours, merchant type,good/service type, good/service price, proximity of the user, and/or thelike. At step 210, a selection from the user of one or more merchantsfrom the merchant list is received. At step 212, an input designatedtime may be received, which may be input to the predictive model togenerate a predictive wait time estimate. The input designated time maybe determined from a current time, a selected future time, or a futuretime that is determined from the current time plus travel time for theuser from their current location to the merchant location. It will beappreciated that many configurations are possible.

With further reference to FIG. 2 , and in some non-limiting embodimentsor aspects of the disclosure, at step 214, using the predictive model,the predictive wait time is generated for the input designated time. Thepredictive wait time estimate may be at least partially based on therelationship of a queue length at the designated time to the servicerate at the designated time, at step 216. Further, the queue length atthe designated time may be determined at least partially by an initialqueue length at a start time and differences in the arrival rate and theservice rate for each subinterval from the start time to the designatedtime, at step 218. At step 220, the predictive wait time estimate may becompared to a predetermined threshold wait time. At step 222, based atleast partially on the comparison of the predictive wait time estimateto the predetermined threshold wait time, a communication may begenerated and transmitted to one or more users and/or one or moremerchants. In a non-limiting example, the predetermined threshold waittime may be a minimum wait time, and a communication may be generatedand transmitted to a user, when the predictive wait time is less than orequal to the minimum wait time, alerting the user to low wait times fora given merchant. By way of another non-limiting example, thepredetermined wait threshold wait time may be a maximum wait time, and acommunication may be generated and transmitted to the merchant for whichpredictive wait time is equal to or greater than the maximum wait timesuch that the merchant may take action to increase their correspondingservice rate (e.g., activating another point of service, sending acommunication to POS terminal operators, and/or the like). At step 224,new transaction data may be received, and the system may repeat steps204-222 based on the new transaction data, such that the predictivemodel is improved and refined over time. It will be appreciated thatmany configurations are possible.

Predictive Model Formation and Application

In one non-limiting example, the predictive model for wait timeestimation may be generated by using transaction data as a proxy fordirect observation. As a basis for generating the predictive model, letμ denote service rate, let λ denote arrival rate, let ρ denote queuelength, and let ρ₀ denote queue length at the start of the interval.Normal queue behavior, therefore, may be represented by the followingformula:

Δρ=λ−μ  Formula 1

which shows that the change in queue length in an interval may bedetermined by the arrival rate minus the service rate. Thus, at anygiven interval unit (e.g., minute) n, we can represent queue length bythe following formula:

$\begin{matrix}{\rho = {\rho_{0} + {\sum\limits_{0}^{n - 1}{\Delta\rho}}}} & {{Formula}2}\end{matrix}$

which shows that queue length may be determined by the starting queuelength plus every change in queue length in each interval since thestart. In many models, the starting queue length may be zero torepresent a merchant's initial queue length when starting a businessday. Thus, the wait time W after time n may be represented by thefollowing formula:

$\begin{matrix}{W = \frac{\sum_{0}^{n - 1}\frac{\rho}{\mu}}{n}} & {{Formula}3}\end{matrix}$

which shows that wait time may be determined by the sum of eachinterval's queue length divided by service rate, divided by the totaltime. In effect, it is the mean wait time over all intervals.

In one non-limiting example, financial transaction data over a sampleperiod of twelve months may be collected for creation of a training dataset for a generated predictive model, e.g., a machine learningalgorithm. In a system managed by a transaction service provider, thefinancial transaction data may be stored in a transaction data databaseafter being processed by a transaction processing server. Rawtransaction data may include information such as transaction date,transaction time, merchant identification, merchant location,transaction value, and/or the like. The raw transaction data may beprocessed to generate training data and test feature vectors. Eachfeature vector includes fields such as service rate, day of the week,time of day, number of transactions in subinterval (e.g., minute),number of transactions in prior subinterval, value of transactions insubinterval, value of transactions in prior subinterval, mean amountspent per customer at merchant, and/or the like. Day of the week may bedirectly determined from transaction date and time of day may bedetermined from transaction time. Number of transactions in thesubinterval may be determined from the number of transactions with atransaction date and transaction time that fall within the subinterval.Number of transactions in a prior subinterval may be determined from thenumber of transactions with a transaction date and transaction time thatfall within the prior subinterval. Value of transactions in asubinterval may be determined from the total transaction value of alltransactions with a transaction date and transaction time that fallwithin the subinterval. Value of transactions in a prior subinterval maybe determined from the total transaction value of all transactions witha transaction date and transaction time that fall within the priorsubinterval. Mean amount spent per customer at a merchant may bedetermined from the total transaction value divided by the number ofunique transaction accounts for all transactions for the given merchant.These fields of the feature vector form the independent variables of thetraining data. It will be appreciated that many configurations arepossible.

To generate a complete training data set for training of the predictivemodel (e.g., a machine learning model), a training label set must begenerated. The predictive model may be a linear regression model, forexample, in which case the data set of feature vectors serve as theinput for the linear regression model, and arrival rate may be theoutput of the linear regression model. Generation of the training labelset includes generating the dependent variable data, which is arrivalrate. For estimating these training labels, an arrival estimation modelmay be used, such as a modified Pareto distribution model. In thisnon-limiting example, if n denotes the optimum queue length at a giventime, and t is the amount of time it takes for a queue of length n toform, then by applying the modified Pareto distribution, we can say thathalf of the queue size n/2 builds up during the square root of the timeinterval √{square root over (t)}. This may then be used to model thearrival rates. A modified Pareto distribution provides an improved fitfor modeling arrival rates, as most customers join the queue in thefirst fraction of the line growth, and thereafter the number of newarrivals continues to decrease until queue length becomes smaller again.This is because people have a tendency to be drawn to a queue where waittime and/or queue length is small. Thus, more people join the queue whenit is small, but once the wait time and/or queue length has becomeconsiderable, people hesitate to join the queue. In some circumstances,some people may even abandon the queue if the wait time is too great.Once the queue length decreases again, either through service orabandonments, the number of new people joining the queue with begin toincrease once more. Repeating this cycle results in predictive modelfluctuations that more accurately matches real human behavior.

In view the above, generation of the predictive model may includedetermination of the service rate. The service rate may be representedas the number of people serviced per unit time (e.g., service perminute). In one non-limiting example, the service rate may be determinedby directly calculating the number of transactions in a minute.According to another non-limiting example, the service rate may bedetermined by dividing the total value of transactions in an interval(e.g., minute) by the average (e.g., mean, median, mode) cost per personfor a given merchant, which provides an approximate number of peopleserved in the interval. This may be combined with averaging theseapproximations over a number of intervals (e.g., five minutes) to reducevariance. Finally, if the sample data is known to capture only a sectionof the entire population of transaction accounts, such as only capturingtransaction accounts affiliated with a given transaction serviceprovider, then the wait time for the entire population may be estimatedby scaling the estimate based on the transactions service provider'smarket share. For example, if the transaction service provider'sprocessed transactions account for 70% of all financial transactions,the estimated number of transactions completed per time interval may bescaled up by dividing by 0.70.

The above arrival estimation model in combination with the above servicerate estimation process may be used to generate the predictive model,e.g., linear regression model. For generating a predictive wait time fora future designated time, a test feature vector (input) is prepared thatbest approximates what conditions will be like at the future designatedtime. Because historic transaction data has already been collected, afeature vector can be generated based on transactions occurring in thesame weekday, same month, same week of the month, and/or the like.Exemplary output of the application of a linear regression predictivemodel to test transaction data, using the above methods of derivingarrival rate and service rate, are shown in FIGS. 3 and 4 . FIG. 3depicts predictive queue length, determined by Formulas 1 and 2, shownabove. As depicted, the described methods herein produce a lesservariance estimation of queue length that is highly correlated withactual queue length. Moreover, FIG. 4 depicts predictive wait time,which is the ultimate output of the predictive model and the result ofFormula 3, shown above. As depicted, the described methods hereinproduce a lesser variance estimation of wait time that is highlycorrelated with actual wait time. It will be appreciated that otherconfigurations are possible.

Although the disclosure has been described in detail for the purpose ofillustration based on what is currently considered to be the mostpractical and preferred and non-limiting embodiments or aspects, it isto be understood that such detail is solely for that purpose and thatthe disclosure is not limited to the disclosed embodiments, but, on thecontrary, is intended to cover modifications and equivalent arrangementsthat are within the spirit and scope of the appended claims. Forexample, it is to be understood that the present disclosure contemplatesthat, to the extent possible, one or more features of any embodiment canbe combined with one or more features of any other embodiment.

What is claimed is:
 1. A computer-implemented method comprising:receiving, with at least one processor, a request for a predictive waittime estimate from a communication device of a user, wherein the requestcomprises a designated time and a selection of a merchant; determining,with at least one processor, an initial queue length associated with themerchant at a current time preceding the designated time; determining,with at least one processor, a service rate for each subinterval of aplurality of subintervals from the current time to the designated timebased on previously processed transactions to produce a plurality ofservice rates; determining, with at least one processor, an arrival ratefor each subinterval of the plurality of subintervals from the currenttime to the designated time using a trained predictive model to producea plurality of arrival rates, wherein the trained predictive model istrained on transaction data representative of a plurality oftransactions between a plurality of transaction accounts and at leastone merchant completed during a sample time period preceding the currenttime, and wherein the trained predictive model is trained to output apredicted arrival rate given an input of a time associated with asubinterval of the plurality of subintervals; determining, with at leastone processor, a difference between an arrival rate of the plurality ofarrival rates and a service rate of the plurality of services rates foreach subinterval of the plurality of subintervals, to produce aplurality of changes in queue length for each subinterval of theplurality of subintervals; determining, with at least one processor, aqueue length at the designated time based on the initial queue lengthand the plurality of changes in queue length; generating, with at leastone processor, the predictive wait time estimate based on the queuelength at the designated time and a service rate at the designated time;and transmitting, with at least one processor, a response to thecommunication device of the user, wherein the response comprises thepredictive wait time estimate.
 2. The method of claim 1, wherein thedesignated time is based on the current time plus a travel time for theuser to travel from a current location of the user to a location of themerchant.
 3. The method of claim 2, further comprising transmitting tothe communication device of the user, with at least one processor, alist comprising a plurality of merchants, wherein the selection of themerchant is based on the list comprising the plurality of merchants. 4.The method of claim 3, further comprising generating, with at least oneprocessor, the list comprising the plurality of merchants based at leastpartly on a proximity of the location of the user to a location of eachmerchant of the plurality of merchants.
 5. The method of claim 1,further comprising, in response to determining that the predictive waittime estimate is greater than or equal to a predetermined threshold waittime for the merchant, generating and transmitting, with at least oneprocessor, a communication to the communication device of the usercomprising an offer for a reduced service or product price for themerchant.
 6. The method of claim 1, further comprising, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the merchant,generating and transmitting, with at least one processor, acommunication to a communication device of the merchant comprising analert configured to cause the merchant to take action to increase acurrent service rate of the merchant.
 7. The method of claim 1, furthercomprising, in response to determining that the predictive wait timeestimate is less than or equal to a predetermined minimum wait time forthe merchant, generating and transmitting, with at least one processor,a communication to the communication device of the user comprising anadvertisement for the merchant.
 8. A system comprising at least oneprocessor, wherein the at least one processor is programmed and/orconfigured to: receive a request for a predictive wait time estimatefrom a communication device of a user, wherein the request comprises adesignated time and a selection of a merchant; determine an initialqueue length associated with the merchant at a current time precedingthe designated time; determine a service rate for each subinterval of aplurality of subintervals from the current time to the designated timebased on previously processed transactions to produce a plurality ofservice rates; determine an arrival rate for each subinterval of theplurality of subintervals from the current time to the designated timeusing a trained predictive model to produce a plurality of arrivalrates, wherein the trained predictive model is trained on transactiondata representative of a plurality of transactions between a pluralityof transaction accounts and at least one merchant completed during asample time period preceding the current time, and wherein the trainedpredictive model is trained to output a predicted arrival rate given aninput of a time associated with a subinterval of the plurality ofsubintervals; determine a difference between an arrival rate of theplurality of arrival rates and a service rate of the plurality ofservices rates for each subinterval of the plurality of subintervals, toproduce a plurality of changes in queue length for each subinterval ofthe plurality of subintervals; determine a queue length at thedesignated time based on the initial queue length and the plurality ofchanges in queue length; generate the predictive wait time estimatebased on the queue length at the designated time and a service rate atthe designated time; and transmit a response to the communication deviceof the user, wherein the response comprises the predictive wait timeestimate.
 9. The system of claim 8, wherein the designated time is basedon the current time plus a travel time for the user to travel from acurrent location of the user to a location of the merchant.
 10. Thesystem of claim 9, wherein the at least one processor is furtherprogrammed and/or configured to transmit to the communication device ofthe user a list comprising a plurality of merchants, wherein theselection of the merchant is based on the list comprising the pluralityof merchants.
 11. The system of claim 10, wherein the at least oneprocessor is further programmed and/or configured to generate the listcomprising the plurality of merchants based at least partly on aproximity of the location of the user to a location of each merchant ofthe plurality of merchants.
 12. The system of claim 8, wherein the atleast one processor is further programmed and/or configured to, inresponse to determining that the predictive wait time estimate isgreater than or equal to a predetermined threshold wait time for themerchant, generate and transmit a communication to the communicationdevice of the user comprising an offer for a reduced service or productprice for the merchant.
 13. The system of claim 8, wherein the at leastone processor is further programmed and/or configured to, in response todetermining that the predictive wait time estimate is greater than orequal to a predetermined threshold wait time for the merchant, generateand transmit a communication to a communication device of the merchantcomprising an alert configured to cause the merchant to take action toincrease a current service rate of the merchant.
 14. The system of claim8, wherein the at least one processor is further programmed and/orconfigured to, in response to determining that the predictive wait timeestimate is less than or equal to a predetermined minimum wait time forthe merchant, generate and transmit a communication to the communicationdevice of the user comprising an advertisement for the merchant.
 15. Acomputer program product comprising at least one non-transitorycomputer-readable medium storing one or more instructions that, whenexecuted by at least one processor, cause the at least one processor to:receive a request for a predictive wait time estimate from acommunication device of a user, wherein the request comprises adesignated time and a selection of a merchant; determine an initialqueue length associated with the merchant at a current time precedingthe designated time; determine a service rate for each subinterval of aplurality of subintervals from the current time to the designated timebased on previously processed transactions to produce a plurality ofservice rates; determine an arrival rate for each subinterval of theplurality of subintervals from the current time to the designated timeusing a trained predictive model to produce a plurality of arrivalrates, wherein the trained predictive model is trained on transactiondata representative of a plurality of transactions between a pluralityof transaction accounts and at least one merchant completed during asample time period preceding the current time, and wherein the trainedpredictive model is trained to output a predicted arrival rate given aninput of a time associated with a subinterval of the plurality ofsubintervals; determine a difference between an arrival rate of theplurality of arrival rates and a service rate of the plurality ofservices rates for each subinterval of the plurality of subintervals, toproduce a plurality of changes in queue length for each subinterval ofthe plurality of subintervals; determine a queue length at thedesignated time based on the initial queue length and the plurality ofchanges in queue length; generate the predictive wait time estimatebased on the queue length at the designated time and a service rate atthe designated time; and transmit a response to the communication deviceof the user, wherein the response comprises the predictive wait timeestimate.
 16. The computer program product of claim 15, wherein thedesignated time is based on the current time plus a travel time for theuser to travel from a current location of the user to a location of themerchant.
 17. The computer program product of claim 16, wherein the oneor more instructions further cause the at least one processor totransmit to the communication device of the user a list comprising aplurality of merchants, wherein the selection of the merchant is basedon the list comprising the plurality of merchants.
 18. The computerprogram product of claim 17, wherein the one or more instructionsfurther cause the at least one processor to generate the list comprisingthe plurality of merchants based at least partly on a proximity of thelocation of the user to a location of each merchant of the plurality ofmerchants.
 19. The computer program product of claim 15, wherein the oneor more instructions further cause the at least one processor to, inresponse to determining that the predictive wait time estimate isgreater than or equal to a predetermined threshold wait time for themerchant, generate and transmit a communication to the communicationdevice of the user comprising an offer for a reduced service or productprice for the merchant.
 20. The computer program product of claim 15,wherein the one or more instructions further cause the at least oneprocessor to, in response to determining that the predictive wait timeestimate is less than or equal to a predetermined minimum wait time forthe merchant, generate and transmit a communication to the communicationdevice of the user comprising an advertisement for the merchant.